#! /usr/bin/env python
# -*- coding: utf-8 -*-

"""
 *
 * - Ime
 *
 *  - kratki opis
 *
 * Autori:
 * Verzija: 0.1
 * Datum: 05.01.2011
 *
"""

import pygame
from pygame.locals import *


class cGUI_gumb:

    def __init__(self, x, y):
        self.pozicija_x = x
        self.pozicija_y = y

        self.kliknut = False
        self.pritisnut = False
        pass

    # pozvana samo kada se dogodi neki event na kompu, recimo pritisak tipke, pomak misa
    def primi_event(self, event):
        pass

    # poziva se svaki frame/game_loop u igri
    def azuriraj(self):
        pass

    # crta na surace jel
    def crtaj(self, surface):
        pass

    # PROVJERE
    # vraca true ako je na gumb kliknuto
    def je_kliknut(self):
        pass

    # gumb ima dva stanja - pritisnu i nepritisnut/otpusteni kao i svaki pravi gumb, ako je pritisnut ova metoda vraca True
    def je_pritisnut(self):
        return self.pritisnut


### ZA TESTIRANJE
if __name__ == "__main__":
    import pygame
    from pygame.locals import *
    from sys import exit

    pygame.init()

    glavni_buffer = pygame.display.set_mode((800, 600), DOUBLEBUF)

    glavna_petlja = True

    GUI_element = cGUI_gumb(100, 100)

    while glavna_petlja == True:

        # INPUT
        for event in pygame.event.get():
            if event.type == QUIT:
                exit()

            if event.type == KEYDOWN:

                if event.key == K_ESCAPE:
                    glavna_petlja = False

        GUI_element.primi_event(event)

        # AZURIRANJE
        GUI_element.azuriraj()

        # CRTANJE
        glavni_buffer.fill((0, 50, 0))
        GUI_element.crtaj(glavni_buffer)
        pygame.display.flip()
